package com.qqt.csr.route.enums;

import lombok.Getter;

@Getter
public enum RouteTaskEventEnum {
    CREATED(0, "创建任务", RouteTaskStatusEnum.NONE, RouteTaskStatusEnum.UN_ROUTE),
    MATCHED_BIZ(1, "已匹配业务", RouteTaskStatusEnum.UN_ROUTE, RouteTaskStatusEnum.ROUTEING),
    DIRECTLY_SEAT(2, "直接有坐席", RouteTaskStatusEnum.ROUTEING, RouteTaskStatusEnum.ROUTED),
    IN_QUEUE(3, "入队", RouteTaskStatusEnum.ROUTEING, RouteTaskStatusEnum.QUEUE),
    OUT_QUEUE_SEAT(4, "出队有坐席", RouteTaskStatusEnum.QUEUE, RouteTaskStatusEnum.ROUTED),
    OUT_QUEUE_NOT_SEAT(5, "出队无坐席", RouteTaskStatusEnum.QUEUE, RouteTaskStatusEnum.FAIL),
    NOT_MATCHED_TIME(6, "不在服务时间", RouteTaskStatusEnum.UN_ROUTE, RouteTaskStatusEnum.FAIL),
    NOT_MATCHED_BIZ_TIME(7, "不在业务的服务时间", RouteTaskStatusEnum.ROUTEING, RouteTaskStatusEnum.FAIL),
    SELECTED_BIZ_ERROR_LIMIT(8, "达到业务选择错误次数上限", RouteTaskStatusEnum.ROUTEING, RouteTaskStatusEnum.FAIL),
    NOT_AVAILABLE_SKILL_SET(9, "无可用技能组分配", RouteTaskStatusEnum.ROUTEING, RouteTaskStatusEnum.FAIL),
    VISITOR_OUT_QUEUE(10, "访客主动退出排队", RouteTaskStatusEnum.QUEUE, RouteTaskStatusEnum.FAIL),
    ;

    private Integer value;
    private String desc;
    private RouteTaskStatusEnum from;
    private RouteTaskStatusEnum to;

    RouteTaskEventEnum(Integer value, String desc, RouteTaskStatusEnum from, RouteTaskStatusEnum to) {
        this.value = value;
        this.desc = desc;
        this.from = from;
        this.to = to;
    }
}
